home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / M2011PWA.ZIP / MATRIX.PPE (.txt) < prev    next >
Encoding:
PCBoard Programming Language Executable  |  1994-04-21  |  36.4 KB  |  1,875 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     Boolean  BOOLEAN003
  22.     Boolean  BOOLEAN004
  23.     Integer  INTEGER001
  24.     Integer  INTEGER002
  25.     Integer  INTEGER003
  26.     Integer  INTEGER004
  27.     Integer  INTEGER005
  28.     Integer  INTEGER006
  29.     Integer  INTEGER007
  30.     Integer  INTEGER008
  31.     Integer  INTEGER009
  32.     Integer  INTEGER010
  33.     Integer  TINTEGER011(5)
  34.     Integer  INTEGER012
  35.     Integer  INTEGER013
  36.     Integer  INTEGER014
  37.     Integer  INTEGER015
  38.     Integer  INTEGER016
  39.     Integer  INTEGER017
  40.     Integer  INTEGER018
  41.     Integer  INTEGER019
  42.     Integer  INTEGER020
  43.     Integer  INTEGER021
  44.     Integer  INTEGER022
  45.     Integer  INTEGER023
  46.     Integer  TINTEGER024(55)
  47.     String   TSTRING001(20)
  48.     String   TSTRING002(9,3)
  49.     String   TSTRING003(5,4)
  50.     String   TSTRING004(50,4)
  51.     String   TSTRING005(6,3)
  52.     String   TSTRING006(5,50)
  53.     String   TSTRING007(7)
  54.     String   TSTRING008(42)
  55.     String   TSTRING009(28)
  56.     String   TSTRING010(9)
  57.     String   STRING011
  58.     String   STRING012
  59.     String   STRING013
  60.     String   STRING014
  61.     String   STRING015
  62.     String   STRING016
  63.     String   STRING017
  64.     String   STRING018
  65.     String   STRING019
  66.     String   STRING020
  67.     String   STRING021
  68.     String   STRING022
  69.     String   STRING023
  70.     String   TSTRING024(99)
  71.     String   STRING025
  72.     String   STRING026
  73.     String   STRING027
  74.     String   STRING028
  75.     String   STRING029
  76.     String   STRING030
  77.     String   STRING031
  78.     String   STRING032
  79.     String   STRING033
  80.     String   STRING034
  81.     String   STRING035
  82.     String   STRING036
  83.     String   STRING037
  84.     String   STRING038
  85.     String   STRING039
  86.     String   STRING040
  87.     String   STRING041
  88.     String   STRING042
  89.     String   STRING043
  90.     String   STRING044
  91.     String   STRING045
  92.     String   STRING046
  93.     String   STRING047
  94.     String   STRING048
  95.     String   TSTRING049(67)
  96.     String   STRING050
  97.     String   STRING051
  98.     String   STRING052
  99.  
  100. ;------------------------------------------------------------------------------
  101.  
  102.     TSTRING001(1) = PPEPath() + "MATRIX.CFG"
  103.     TSTRING001(2) = PPEPath() + "FORM.1"
  104.     TSTRING001(3) = PPEPath() + "FORM.2"
  105.     TSTRING001(4) = PPEPath() + "FORM.3"
  106.     TSTRING001(5) = PPEPath() + "FORM.4"
  107.     TSTRING001(6) = PPEPath() + "FORM.5"
  108.     TSTRING001(7) = PPEPath() + "CONFIG.1"
  109.     TSTRING001(8) = PPEPath() + "CONFIG.2"
  110.     TSTRING001(9) = PPEPath() + "CONFIG.3"
  111.     TSTRING001(10) = PPEPath() + "CONFIG.4"
  112.     TSTRING001(11) = PPEPath() + "CONFIG.5"
  113.     TSTRING001(12) = PPEPath() + "FORM.SCR"
  114.     TSTRING001(13) = PPEPath() + "COMMENT.TMP"
  115.     TSTRING001(14) = PPEPath() + "MATRIX.SCR"
  116.     TSTRING001(15) = PPEPath() + "TEXT.CFG"
  117.     TSTRING001(16) = PPEPath() + "LOGON.SCR"
  118.     TSTRING001(17) = PPEPath() + "NEWUSER.SCR"
  119.     TSTRING001(18) = PPEPath() + "BLACKLST.SCR"
  120.     TSTRING001(19) = PPEPath() + "MATRIX.TMP"
  121.     If (Exist(TSTRING001(1)) == 0) Then
  122.         PrintLn "@X07Configuration File Missing... (MATRIX.CFG)"
  123.         PrintLn "@X07Please report this to the Sysop..."
  124.         PrintLn 
  125.         Print "@X0FWhat is your Full Name"
  126.         End
  127.     Endif
  128.     If (Exist(TSTRING001(14)) == 0) Then
  129.         PrintLn "@X07Matrix Display File Missing... (MATRIX.SCR)"
  130.         PrintLn "@X07Please report this to the Sysop..."
  131.         PrintLn 
  132.         Print "@X0FWhat is your Full Name"
  133.         End
  134.     Endif
  135.     If (Exist(TSTRING001(15)) == 0) Then
  136.         PrintLn "@X07Text Configuration File Missing... (TEXT.CFG)"
  137.         PrintLn "@X07Please report this to the Sysop..."
  138.         PrintLn 
  139.         Print "@X0FWhat is your Full Name"
  140.         End
  141.     Endif
  142.     RdUNet PcbNode()
  143.     WrUNet PcbNode(), "U", UN_Name(), UN_City(), "User is Logging in using Matrix 2000!", ""
  144.     FOpen 15, TSTRING001(15), 0, 0
  145.     For INTEGER017 = 1 To 42
  146.         FGet 15, TSTRING008(INTEGER017)
  147.     Next
  148.     FClose 15
  149.     FOpen 1, TSTRING001(1), 0, 0
  150.     FGet 1, STRING023
  151.     FGet 1, STRING022
  152.     For INTEGER017 = 1 To 6
  153.         For INTEGER018 = 1 To 3
  154.             FGet 1, TSTRING005(INTEGER017, INTEGER018)
  155.         Next
  156.     Next
  157.     For INTEGER017 = 1 To 7
  158.         FGet 1, TSTRING007(INTEGER017)
  159.     Next
  160.     For INTEGER017 = 1 To 11
  161.         FGet 1, TSTRING009(INTEGER017)
  162.     Next
  163.     For INTEGER017 = 1 To 7
  164.         For INTEGER018 = 1 To 3
  165.             FGet 1, TSTRING002(INTEGER017, INTEGER018)
  166.         Next
  167.     Next
  168.     FGet 1, TSTRING002(8, 1)
  169.     FGet 1, TSTRING002(8, 2)
  170.     FGet 1, TSTRING002(9, 1)
  171.     FGet 1, TSTRING002(9, 2)
  172.     FGet 1, TSTRING002(9, 3)
  173.     For INTEGER017 = 12 To 16
  174.         FGet 1, TSTRING009(INTEGER017)
  175.     Next
  176.     FGet 1, STRING021
  177.     FGet 1, STRING020
  178.     For INTEGER017 = 1 To 5
  179.         For INTEGER018 = 1 To 4
  180.             FGet 1, TSTRING003(INTEGER017, INTEGER018)
  181.         Next
  182.     Next
  183.     For INTEGER017 = 17 To 24
  184.         FGet 1, TSTRING009(INTEGER017)
  185.     Next
  186.     For INTEGER017 = 1 To 36
  187.         FGet 1, STRING013
  188.     Next
  189.     FGet 1, STRING028
  190.     FGet 1, TSTRING009(25)
  191.     FGet 1, TSTRING009(26)
  192.     FGet 1, TSTRING009(27)
  193.     FClose 1
  194.     FOpen 1, TSTRING001(1), 0, 0
  195.     For INTEGER017 = 1 To 140
  196.         FGet 1, STRING013
  197.     Next
  198.     FGet 1, STRING046
  199.     FGet 1, STRING047
  200.     FGet 1, STRING048
  201.     FGet 1, INTEGER008
  202.     FClose 1
  203.     INTEGER023 = ReadLine(PCBDat(), 265)
  204.     If (INTEGER023 > TSTRING009(12)) Then
  205.         TSTRING009(12) = INTEGER023
  206.         TSTRING008(23) = "@X0FPassword must be at Least " + TSTRING009(12) + " Characters Long!"
  207.     Endif
  208.     Select Case (Upper(TSTRING007(2)))
  209.         Case "W"
  210.             STRING026 = "@X07"
  211.             STRING025 = "@X0F"
  212.         Case "B"
  213.             STRING026 = "@X01"
  214.             STRING025 = "@X09"
  215.         Case "G"
  216.             STRING026 = "@X02"
  217.             STRING025 = "@X0A"
  218.         Case "C"
  219.             STRING026 = "@X03"
  220.             STRING025 = "@X0B"
  221.         Case "R"
  222.             STRING026 = "@X04"
  223.             STRING025 = "@X0C"
  224.         Case "P"
  225.             STRING026 = "@X05"
  226.             STRING025 = "@X0D"
  227.     End Select
  228.     TSTRING049(1) = ""
  229.     TSTRING049(2) = ""
  230.     TSTRING049(3) = ""
  231.     TSTRING049(4) = ""
  232.     TSTRING049(5) = ""
  233.     TSTRING049(6) = ""
  234.     TSTRING049(7) = ""
  235.     TSTRING049(8) = ""
  236.     TSTRING049(9) = ""
  237.     TSTRING049(10) = ""
  238.     TSTRING049(11) = "a"
  239.     TSTRING049(12) = "q"
  240.     TSTRING049(13) = "z"
  241.     TSTRING049(14) = "s"
  242.     TSTRING049(15) = "w"
  243.     TSTRING049(16) = "x"
  244.     TSTRING049(17) = "c"
  245.     TSTRING049(18) = "e"
  246.     TSTRING049(19) = "d"
  247.     TSTRING049(20) = ""
  248.     TSTRING049(21) = "v"
  249.     TSTRING049(22) = "r"
  250.     TSTRING049(23) = "f"
  251.     TSTRING049(24) = "g"
  252.     TSTRING049(25) = "t"
  253.     TSTRING049(26) = "b"
  254.     TSTRING049(27) = "h"
  255.     TSTRING049(28) = "y"
  256.     TSTRING049(29) = "n"
  257.     TSTRING049(30) = ""
  258.     TSTRING049(31) = "j"
  259.     TSTRING049(32) = "u"
  260.     TSTRING049(33) = "m"
  261.     TSTRING049(34) = "k"
  262.     TSTRING049(35) = "i"
  263.     TSTRING049(36) = "l"
  264.     TSTRING049(37) = "p"
  265.     TSTRING049(38) = "o"
  266.     TSTRING049(39) = "L"
  267.     TSTRING049(40) = ""
  268.     TSTRING049(41) = "P"
  269.     TSTRING049(42) = "O"
  270.     TSTRING049(43) = "K"
  271.     TSTRING049(44) = "M"
  272.     TSTRING049(45) = "N"
  273.     TSTRING049(46) = "J"
  274.     TSTRING049(47) = "I"
  275.     TSTRING049(48) = "H"
  276.     TSTRING049(49) = "B"
  277.     TSTRING049(50) = ""
  278.     TSTRING049(51) = "U"
  279.     TSTRING049(52) = "G"
  280.     TSTRING049(53) = "Y"
  281.     TSTRING049(54) = "V"
  282.     TSTRING049(55) = "F"
  283.     TSTRING049(56) = "C"
  284.     TSTRING049(57) = "T"
  285.     TSTRING049(58) = "D"
  286.     TSTRING049(59) = "R"
  287.     TSTRING049(50) = ""
  288.     TSTRING049(61) = "X"
  289.     TSTRING049(62) = "S"
  290.     TSTRING049(63) = "E"
  291.     TSTRING049(64) = "W"
  292.     TSTRING049(65) = "Q"
  293.     TSTRING049(66) = "Z"
  294.     TSTRING049(67) = "A"
  295.     TINTEGER024(1) = 84
  296.     TINTEGER024(2) = 104
  297.     TINTEGER024(3) = 105
  298.     TINTEGER024(4) = 115
  299.     TINTEGER024(5) = 255
  300.     TINTEGER024(6) = 80
  301.     TINTEGER024(7) = 80
  302.     TINTEGER024(8) = 69
  303.     TINTEGER024(9) = 255
  304.     TINTEGER024(10) = 105
  305.     TINTEGER024(11) = 115
  306.     TINTEGER024(12) = 255
  307.     TINTEGER024(13) = 85
  308.     TINTEGER024(14) = 110
  309.     TINTEGER024(15) = 114
  310.     TINTEGER024(16) = 101
  311.     TINTEGER024(17) = 103
  312.     TINTEGER024(18) = 105
  313.     TINTEGER024(19) = 115
  314.     TINTEGER024(20) = 116
  315.     TINTEGER024(21) = 101
  316.     TINTEGER024(22) = 114
  317.     TINTEGER024(23) = 101
  318.     TINTEGER024(24) = 100
  319.     TINTEGER024(25) = 33
  320.     TINTEGER024(26) = 255
  321.     TINTEGER024(27) = 255
  322.     TINTEGER024(28) = 80
  323.     TINTEGER024(29) = 108
  324.     TINTEGER024(30) = 101
  325.     TINTEGER024(31) = 97
  326.     TINTEGER024(32) = 115
  327.     TINTEGER024(33) = 101
  328.     TINTEGER024(34) = 255
  329.     TINTEGER024(35) = 82
  330.     TINTEGER024(36) = 101
  331.     TINTEGER024(37) = 103
  332.     TINTEGER024(38) = 105
  333.     TINTEGER024(39) = 115
  334.     TINTEGER024(40) = 116
  335.     TINTEGER024(41) = 101
  336.     TINTEGER024(42) = 114
  337.     TINTEGER024(43) = 33
  338.     TINTEGER024(44) = 255
  339.     TINTEGER024(45) = 255
  340.     TINTEGER024(46) = 79
  341.     TINTEGER024(47) = 110
  342.     TINTEGER024(48) = 108
  343.     TINTEGER024(49) = 121
  344.     TINTEGER024(50) = 255
  345.     TINTEGER024(51) = 36
  346.     TINTEGER024(52) = 49
  347.     TINTEGER024(53) = 48
  348.     TINTEGER024(54) = 33
  349.     TINTEGER024(55) = 196
  350.     Gosub LABEL072
  351.     STRING030 = Upper(TSTRING009(5))
  352.     :LABEL001
  353.     If (BOOLEAN002) Goto LABEL007
  354.     BOOLEAN004 = 0
  355.     BOOLEAN002 = 0
  356.     Color 15
  357.     Cls
  358.     DispFile TSTRING001(14), 1
  359.     AnsiPos TSTRING005(1, 3), TSTRING005(1, 2)
  360.     Print STRING023, TSTRING005(1, 1)
  361.     AnsiPos TSTRING005(2, 3), TSTRING005(2, 2)
  362.     Print STRING023, TSTRING005(2, 1)
  363.     AnsiPos TSTRING005(3, 3), TSTRING005(3, 2)
  364.     Print STRING023, TSTRING005(3, 1)
  365.     AnsiPos TSTRING005(4, 3), TSTRING005(4, 2)
  366.     Print STRING023, TSTRING005(4, 1)
  367.     AnsiPos TSTRING005(5, 3), TSTRING005(5, 2)
  368.     Print STRING023, TSTRING005(5, 1)
  369.     AnsiPos TSTRING005(6, 3), TSTRING005(6, 2)
  370.     Print STRING023, TSTRING005(6, 1)
  371.     AnsiPos TSTRING005(1, 3), TSTRING005(1, 2)
  372.     Print STRING022, TSTRING005(1, 1)
  373.     INTEGER014 = 1
  374.     :LABEL002
  375.     If (BOOLEAN004) Goto LABEL006
  376.     STRING027 = Inkey()
  377.     If (STRING027 == " ") Then
  378.         INTEGER014 = INTEGER014 + 1
  379.         If (INTEGER014 == 7) Then
  380.             INTEGER014 = 1
  381.             AnsiPos TSTRING005(6, 3), TSTRING005(6, 2)
  382.             Print STRING023, TSTRING005(6, 1)
  383.             AnsiPos TSTRING005(1, 3), TSTRING005(1, 2)
  384.             Print STRING022, TSTRING005(1, 1)
  385.             Goto LABEL003
  386.         Endif
  387.         AnsiPos TSTRING005(INTEGER014 - 1, 3), TSTRING005(INTEGER014 - 1, 2)
  388.         Print STRING023, TSTRING005(INTEGER014 - 1, 1)
  389.         AnsiPos TSTRING005(INTEGER014, 3), TSTRING005(INTEGER014, 2)
  390.         Print STRING022, TSTRING005(INTEGER014, 1)
  391.     Endif
  392.     :LABEL003
  393.     If ((STRING027 == "UP") || (Upper(STRING027) == "A")) Then
  394.         If (INTEGER014 == 1) Then
  395.             Goto LABEL004
  396.         Endif
  397.         INTEGER014 = INTEGER014 - 1
  398.         AnsiPos TSTRING005(INTEGER014 + 1, 3), TSTRING005(INTEGER014 + 1, 2)
  399.         Print STRING023, TSTRING005(INTEGER014 + 1, 1)
  400.         AnsiPos TSTRING005(INTEGER014, 3), TSTRING005(INTEGER014, 2)
  401.         Print STRING022, TSTRING005(INTEGER014, 1)
  402.     Endif
  403.     :LABEL004
  404.     If ((STRING027 == "DOWN") || (Upper(STRING027) == "Z")) Then
  405.         If (INTEGER014 == 6) Then
  406.             Goto LABEL005
  407.         Endif
  408.         INTEGER014 = INTEGER014 + 1
  409.         AnsiPos TSTRING005(INTEGER014 - 1, 3), TSTRING005(INTEGER014 - 1, 2)
  410.         Print STRING023, TSTRING005(INTEGER014 - 1, 1)
  411.         AnsiPos TSTRING005(INTEGER014, 3), TSTRING005(INTEGER014, 2)
  412.         Print STRING022, TSTRING005(INTEGER014, 1)
  413.     Endif
  414.     :LABEL005
  415.     If (STRING027 == Chr(13)) BOOLEAN004 = 1
  416.     Goto LABEL002
  417.     :LABEL006
  418.     Select Case (INTEGER014)
  419.         Case 1
  420.             Gosub LABEL049
  421.         Case 2
  422.             Gosub LABEL008
  423.         Case 3
  424.             Gosub LABEL065
  425.         Case 4
  426.             Gosub LABEL060
  427.         Case 5
  428.             Gosub LABEL053
  429.         Case 6
  430.             Gosub LABEL068
  431.     End Select
  432.     BOOLEAN002 = 0
  433.     BOOLEAN004 = 0
  434.     Goto LABEL001
  435.     :LABEL007
  436.     End
  437.     :LABEL008
  438.     AdjTime 500
  439.     Color 15
  440.     Cls
  441.     If (Left(TSTRING008(31), 1) == "%") Then
  442.         STRING014 = TSTRING008(31)
  443.         STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  444.         DispFile STRING013, 1
  445.     Else
  446.         PrintLn TSTRING008(31)
  447.     Endif
  448.     PrintLn 
  449.     If (STRING028 == "1") Then
  450.         Goto LABEL009
  451.     Endif
  452.     AnsiPos 1, GetY()
  453.     ClrEol
  454.     Print TSTRING008(32)
  455.     STRING029 = ""
  456.     InputStr " _", STRING029, 15, 30, Mask_Ascii(), 1
  457.     If (Upper(STRING029) <> Upper(STRING028)) Return
  458.     :LABEL009
  459.     AdjTime TSTRING007(6)
  460.     Color 15
  461.     Cls
  462.     If (Left(TSTRING008(21), 1) == "%") Then
  463.         STRING014 = TSTRING008(21)
  464.         STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  465.         DispFile STRING013, 1
  466.     Else
  467.         PrintLn TSTRING008(21)
  468.     Endif
  469.     PrintLn 
  470.     More
  471.     Color 15
  472.     Cls
  473.     DispFile TSTRING001(17), 1
  474.     If (TSTRING002(1, 3) > 27) TSTRING002(1, 3) = 25
  475.     If (TSTRING002(1, 3) < 20) TSTRING002(1, 3) = 25
  476.     If (TSTRING002(2, 3) > 13) TSTRING002(1, 3) = 13
  477.     If (TSTRING002(2, 3) < 10) TSTRING002(1, 3) = 13
  478.     TSTRING002(3, 3) = TSTRING002(2, 3)
  479.     If (TSTRING002(4, 3) > 25) TSTRING002(1, 3) = 25
  480.     If (TSTRING002(4, 3) < 20) TSTRING002(1, 3) = 25
  481.     If (TSTRING002(5, 3) > 14) TSTRING002(1, 3) = 13
  482.     If (TSTRING002(5, 3) < 11) TSTRING002(1, 3) = 13
  483.     If (TSTRING002(6, 3) > 14) TSTRING002(1, 3) = 13
  484.     If (TSTRING002(6, 3) < 11) TSTRING002(1, 3) = 13
  485.     If (TSTRING002(7, 3) > 31) TSTRING002(1, 3) = 14
  486.     If (TSTRING002(7, 3) < 20) TSTRING002(1, 3) = 14
  487.     If (TSTRING002(9, 3) > 50) TSTRING002(1, 3) = 40
  488.     If (TSTRING002(9, 3) < 10) TSTRING002(1, 3) = 40
  489.     BOOLEAN004 = 0
  490.     :LABEL010
  491.     If (BOOLEAN004) Goto LABEL011
  492.     INTEGER012 = INTEGER012 + 1
  493.     AnsiPos TSTRING002(1, 2), TSTRING002(1, 1)
  494.     STRING016 = ""
  495.     InputStr "_", STRING016, 15, TSTRING002(1, 3), Mask_Alpha() + ". ", 0
  496.     If (STRING016 <> "") Then
  497.         STRING016 = Upper(STRING016)
  498.         If (U_RecNum(STRING016) == -1) Then
  499.             BOOLEAN004 = 1
  500.         Else
  501.             AnsiPos 1, TSTRING009(14)
  502.             Print TSTRING008(33)
  503.             Delay 18
  504.             AnsiPos 1, TSTRING009(14)
  505.             Print "                                                                                "
  506.             AnsiPos TSTRING002(1, 2), TSTRING002(1, 1)
  507.             For INTEGER017 = 1 To Len(STRING016)
  508.                 Print " "
  509.             Next
  510.             BOOLEAN004 = 0
  511.             STRING016 = ""
  512.         Endif
  513.     ElseIf (INTEGER012 == TSTRING009(13)) Then
  514.         AnsiPos 1, TSTRING009(14)
  515.         PrintLn TSTRING008(24)
  516.         PrintLn 
  517.         KbdStuff TSTRING009(15) + Chr(13)
  518.         Hangup
  519.         DtrOff
  520.     Endif
  521.     Goto LABEL010
  522.     :LABEL011
  523.     If (Exist(TSTRING001(18)) == 0) Then
  524.         Goto LABEL012
  525.     Endif
  526.     FOpen 1, TSTRING001(18), 2, 0
  527.     For INTEGER017 = 1 To 10000
  528.         FGet 1, STRING013
  529.         If (Upper(STRING016) == Upper(STRING013)) Then
  530.             Color 15
  531.             Cls
  532.             If (Left(TSTRING008(22), 1) == "%") Then
  533.                 STRING014 = TSTRING008(22)
  534.                 STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  535.                 DispFile STRING013, 1
  536.                 KbdStuff TSTRING009(15) + Chr(13)
  537.                 Hangup
  538.                 DtrOff
  539.                 End
  540.                 Continue
  541.             Endif
  542.             PrintLn TSTRING008(22)
  543.             KbdStuff TSTRING009(15) + Chr(13)
  544.             Hangup
  545.             DtrOff
  546.             End
  547.         Endif
  548.     Next
  549.     FClose 1
  550.     :LABEL012
  551.     BOOLEAN004 = 0
  552.     BOOLEAN002 = 0
  553.     INTEGER012 = 0
  554.     :LABEL013
  555.     If (BOOLEAN004) Goto LABEL016
  556.     :LABEL014
  557.     If (BOOLEAN002) Goto LABEL015
  558.     INTEGER012 = INTEGER012 + 1
  559.     AnsiPos TSTRING002(3, 2), TSTRING002(3, 1)
  560.     For INTEGER017 = 1 To TSTRING002(2, 3)
  561.         Print " "
  562.     Next
  563.     AnsiPos TSTRING002(2, 2), TSTRING002(2, 1)
  564.     For INTEGER017 = 1 To TSTRING002(2, 3)
  565.         Print " "
  566.     Next
  567.     AnsiPos TSTRING002(2, 2), TSTRING002(2, 1)
  568.     InputStr "_", TSTRING010(1), 15, TSTRING002(2, 3), Mask_Ascii(), 1
  569.     If (Len(TSTRING010(2)) > 3) BOOLEAN002 = 1
  570.     If (TSTRING010(1) <> "") Then
  571.         If (Len(TSTRING010(1)) >= TSTRING009(12)) Then
  572.             BOOLEAN002 = 1
  573.         Endif
  574.         If (Len(TSTRING010(1)) < TSTRING009(12)) Then
  575.             If (INTEGER012 == TSTRING009(13)) Then
  576.                 AnsiPos 1, TSTRING009(14)
  577.                 PrintLn TSTRING008(24)
  578.                 PrintLn 
  579.                 KbdStuff TSTRING009(15) + Chr(13)
  580.                 Hangup
  581.                 DtrOff
  582.             Endif
  583.             AnsiPos 1, TSTRING009(14)
  584.             Print TSTRING008(23)
  585.             Delay 18
  586.             AnsiPos 1, TSTRING009(14)
  587.             Print "                                                                                "
  588.         Endif
  589.     Endif
  590.     Goto LABEL014
  591.     :LABEL015
  592.     BOOLEAN002 = 0
  593.     AnsiPos TSTRING002(3, 2), TSTRING002(3, 1)
  594.     For INTEGER017 = 1 To TSTRING002(3, 3)
  595.         Print " "
  596.     Next
  597.     AnsiPos TSTRING002(3, 2), TSTRING002(3, 1)
  598.     InputStr "_", TSTRING010(2), 15, TSTRING002(2, 3), Mask_Ascii(), 1
  599.     If (Upper(TSTRING010(1)) == Upper(TSTRING010(2))) BOOLEAN004 = 1
  600.     Goto LABEL013
  601.     :LABEL016
  602.     BOOLEAN004 = 0
  603.     INTEGER012 = 0
  604.     :LABEL017
  605.     If (BOOLEAN004) Goto LABEL018
  606.     INTEGER012 = INTEGER012 + 1
  607.     AnsiPos TSTRING002(4, 2), TSTRING002(4, 1)
  608.     InputStr "_", TSTRING010(4), 15, TSTRING002(4, 3), Mask_Alpha() + " ,.-/", 0
  609.     If (TSTRING010(4) <> "") Then
  610.         BOOLEAN004 = 1
  611.     ElseIf (INTEGER012 == TSTRING009(13)) Then
  612.         AnsiPos 1, TSTRING009(14)
  613.         PrintLn TSTRING008(24)
  614.         PrintLn 
  615.         KbdStuff TSTRING009(15) + Chr(13)
  616.         Hangup
  617.         DtrOff
  618.     Endif
  619.     Goto LABEL017
  620.     :LABEL018
  621.     For INTEGER017 = 5 To 6
  622.         BOOLEAN004 = 0
  623.         INTEGER012 = 0
  624.         :LABEL019
  625.         If (BOOLEAN004) Continue
  626.         INTEGER012 = INTEGER012 + 1
  627.         AnsiPos TSTRING002(INTEGER017, 2), TSTRING002(INTEGER017, 1)
  628.         InputStr "_", TSTRING010(INTEGER017), 15, TSTRING002(INTEGER017, 3), Mask_Num() + "-", 0
  629.         If (TSTRING010(INTEGER017) <> "") Then
  630.             BOOLEAN004 = 1
  631.         ElseIf (INTEGER012 == TSTRING009(13)) Then
  632.             AnsiPos 1, TSTRING009(14)
  633.             PrintLn TSTRING008(24)
  634.             PrintLn 
  635.             KbdStuff TSTRING009(15) + Chr(13)
  636.             Hangup
  637.             DtrOff
  638.         Endif
  639.         Goto LABEL019
  640.     Next
  641.     BOOLEAN004 = 0
  642.     INTEGER012 = 0
  643.     :LABEL020
  644.     If (BOOLEAN004) Goto LABEL021
  645.     INTEGER012 = INTEGER012 + 1
  646.     AnsiPos TSTRING002(7, 2), TSTRING002(7, 1)
  647.     InputStr "_", TSTRING010(7), 15, TSTRING002(7, 3), Mask_Ascii(), 0
  648.     If (TSTRING010(7) <> "") Then
  649.         BOOLEAN004 = 1
  650.     ElseIf (INTEGER012 == TSTRING009(13)) Then
  651.         AnsiPos 1, TSTRING009(14)
  652.         PrintLn TSTRING008(24)
  653.         PrintLn 
  654.         KbdStuff TSTRING009(15) + Chr(13)
  655.         Hangup
  656.         DtrOff
  657.     Endif
  658.     Goto LABEL020
  659.     :LABEL021
  660.     AnsiPos TSTRING002(8, 2), TSTRING002(8, 1)
  661.     BOOLEAN004 = 0
  662.     :LABEL022
  663.     If (BOOLEAN004) Goto LABEL023
  664.     InputStr "_", TSTRING010(8), 15, 1, "YNyn", 16384
  665.     If (TSTRING010(8) <> "") BOOLEAN004 = 1
  666.     Goto LABEL022
  667.     :LABEL023
  668.     BOOLEAN004 = 0
  669.     INTEGER012 = 0
  670.     :LABEL024
  671.     If (BOOLEAN004) Goto LABEL025
  672.     INTEGER012 = INTEGER012 + 1
  673.     AnsiPos TSTRING002(9, 2), TSTRING002(9, 1)
  674.     InputStr "_", TSTRING010(9), 15, TSTRING002(9, 3), Mask_Ascii(), 0
  675.     If (TSTRING010(9) <> "") Then
  676.         BOOLEAN004 = 1
  677.     ElseIf (INTEGER012 == TSTRING009(13)) Then
  678.         AnsiPos 1, TSTRING009(14)
  679.         PrintLn TSTRING008(24)
  680.         PrintLn 
  681.         KbdStuff TSTRING009(15) + Chr(13)
  682.         Hangup
  683.         DtrOff
  684.     Endif
  685.     Goto LABEL024
  686.     :LABEL025
  687.     AnsiPos 1, TSTRING009(14)
  688.     More
  689.     If (TSTRING009(17) == 1) Then
  690.         If (TSTRING003(5, 4) == 0) Then
  691.             INTEGER007 = 1
  692.         Endif
  693.         :LABEL026
  694.         If (BOOLEAN002) Goto LABEL036
  695.         BOOLEAN004 = 0
  696.         BOOLEAN002 = 0
  697.         Color 15
  698.         Cls
  699.         DispFile TSTRING001(12), 1
  700.         AnsiPos TSTRING003(1, 3), TSTRING003(1, 2)
  701.         Print STRING021, TSTRING003(1, 1)
  702.         AnsiPos TSTRING003(2, 3), TSTRING003(2, 2)
  703.         Print STRING021, TSTRING003(2, 1)
  704.         AnsiPos TSTRING003(3, 3), TSTRING003(3, 2)
  705.         Print STRING021, TSTRING003(3, 1)
  706.         AnsiPos TSTRING003(4, 3), TSTRING003(4, 2)
  707.         Print STRING021, TSTRING003(4, 1)
  708.         AnsiPos TSTRING003(5, 3), TSTRING003(5, 2)
  709.         Print STRING021, TSTRING003(5, 1)
  710.         AnsiPos TSTRING003(1, 3), TSTRING003(1, 2)
  711.         Print STRING020, TSTRING003(1, 1)
  712.         INTEGER014 = 1
  713.         :LABEL027
  714.         If (BOOLEAN004) Goto LABEL032
  715.         STRING027 = Inkey()
  716.         If (STRING027 == " ") Then
  717.             INTEGER014 = INTEGER014 + 1
  718.             If (INTEGER014 == 6) Then
  719.                 INTEGER014 = 1
  720.                 AnsiPos TSTRING003(5, 3), TSTRING003(5, 2)
  721.                 Print STRING021, TSTRING003(5, 1)
  722.                 AnsiPos TSTRING003(1, 3), TSTRING003(1, 2)
  723.                 Print STRING020, TSTRING003(1, 1)
  724.                 Goto LABEL028
  725.             Endif
  726.             AnsiPos TSTRING003(INTEGER014 - 1, 3), TSTRING003(INTEGER014 - 1, 2)
  727.             Print STRING021, TSTRING003(INTEGER014 - 1, 1)
  728.             AnsiPos TSTRING003(INTEGER014, 3), TSTRING003(INTEGER014, 2)
  729.             Print STRING020, TSTRING003(INTEGER014, 1)
  730.         Endif
  731.         :LABEL028
  732.         If ((STRING027 == "UP") || (Upper(STRING027) == "A")) Then
  733.             If (INTEGER014 == 1) Then
  734.                 Goto LABEL029
  735.             Endif
  736.             INTEGER014 = INTEGER014 - 1
  737.             AnsiPos TSTRING003(INTEGER014 + 1, 3), TSTRING003(INTEGER014 + 1, 2)
  738.             Print STRING021, TSTRING003(INTEGER014 + 1, 1)
  739.             AnsiPos TSTRING003(INTEGER014, 3), TSTRING003(INTEGER014, 2)
  740.             Print STRING020, TSTRING003(INTEGER014, 1)
  741.         Endif
  742.         :LABEL029
  743.         If ((STRING027 == "DOWN") || (Upper(STRING027) == "Z")) Then
  744.             If (INTEGER014 == 5) Then
  745.                 Goto LABEL030
  746.             Endif
  747.             INTEGER014 = INTEGER014 + 1
  748.             AnsiPos TSTRING003(INTEGER014 - 1, 3), TSTRING003(INTEGER014 - 1, 2)
  749.             Print STRING021, TSTRING003(INTEGER014 - 1, 1)
  750.             AnsiPos TSTRING003(INTEGER014, 3), TSTRING003(INTEGER014, 2)
  751.             Print STRING020, TSTRING003(INTEGER014, 1)
  752.         Endif
  753.         :LABEL030
  754.         If ((STRING027 == Chr(13)) && (TINTEGER011(INTEGER014) <> 1)) Then
  755.             If (TSTRING003(INTEGER014, 4) == 1) BOOLEAN004 = 1
  756.             Goto LABEL031
  757.         Endif
  758.         BOOLEAN004 = 0
  759.         :LABEL031
  760.         If ((STRING027 == Chr(27)) || (Upper(STRING027) == "Q")) Then
  761.             If (INTEGER007 == 1) Then
  762.                 BOOLEAN004 = 1
  763.                 BOOLEAN002 = 1
  764.                 BOOLEAN001 = 1
  765.             Endif
  766.         Endif
  767.         Goto LABEL027
  768.         :LABEL032
  769.         If (BOOLEAN002 == 0) Then
  770.             Color 15
  771.             Cls
  772.             Color 7
  773.             DispFile TSTRING001(INTEGER014 + 1), 1
  774.             FOpen 10, TSTRING001(INTEGER014 + 6), 0, 0
  775.             FGet 10, INTEGER015
  776.             If (INTEGER015 > 50) INTEGER015 = 50
  777.             For INTEGER017 = 1 To INTEGER015
  778.                 For INTEGER018 = 1 To 4
  779.                     FGet 10, TSTRING004(INTEGER017, INTEGER018)
  780.                 Next
  781.             Next
  782.             FClose 10
  783.             For INTEGER017 = 1 To INTEGER015
  784.                 BOOLEAN003 = 0
  785.                 :LABEL033
  786.                 If (BOOLEAN003) Continue
  787.                 AnsiPos TSTRING004(INTEGER017, 4), TSTRING004(INTEGER017, 3)
  788.                 If (TSTRING004(INTEGER017, 1) == 1) Then
  789.                     InputStr "_", TSTRING006(INTEGER014, INTEGER017), 15, TSTRING004(INTEGER017, 2), Mask_Ascii(), 0
  790.                     Goto LABEL034
  791.                 Endif
  792.                 If (TSTRING004(INTEGER017, 1) == 2) Then
  793.                     InputStr "_", TSTRING006(INTEGER014, INTEGER017), 15, TSTRING004(INTEGER017, 2), Mask_Num() + "-", 0
  794.                     Goto LABEL034
  795.                 Endif
  796.                 If (TSTRING004(INTEGER017, 1) == 3) Then
  797.                     InputStr "_", TSTRING006(INTEGER014, INTEGER017), 15, TSTRING004(INTEGER017, 2), Mask_Alpha() + " ", 0
  798.                     Goto LABEL034
  799.                 Endif
  800.                 If (TSTRING004(INTEGER017, 1) == 4) Then
  801.                     InputStr "_", TSTRING006(INTEGER014, INTEGER017), 15, TSTRING004(INTEGER017, 2), Mask_AlNum() + " ", 0
  802.                     Goto LABEL034
  803.                 Endif
  804.                 If (Left(TSTRING004(INTEGER017, 1), 1) == 0) Then
  805.                     InputStr "_", TSTRING006(INTEGER014, INTEGER017), 15, TSTRING004(INTEGER017, 2), TSTRING004(INTEGER017, 1), 0
  806.                 Endif
  807.                 :LABEL034
  808.                 If (TSTRING006(INTEGER014, INTEGER017) == "") Then
  809.                     AnsiPos TSTRING004(INTEGER017, 4), TSTRING004(INTEGER017, 3)
  810.                     For INTEGER018 = 1 To TSTRING004(INTEGER017, 2)
  811.                         Print " "
  812.                     Next
  813.                     BOOLEAN003 = 0
  814.                     Goto LABEL035
  815.                 Endif
  816.                 BOOLEAN003 = 1
  817.                 :LABEL035
  818.                 Goto LABEL033
  819.             Next
  820.             STRING013 = ""
  821.             TINTEGER011(INTEGER014) = 1
  822.             If ((TINTEGER011(INTEGER014) == 1) && Len((TSTRING003(INTEGER014, 1) > 5))) Then
  823.                 For INTEGER017 = 1 To Len(TSTRING003(INTEGER014, 1))
  824.                     If (INTEGER017 == Len(TSTRING003(INTEGER014, 1)) - 1) Then
  825.                         STRING013 = STRING013 + "√"
  826.                         Continue
  827.                     Endif
  828.                     STRING013 = STRING013 + Mid(TSTRING003(INTEGER014, 1), INTEGER017, 1)
  829.                 Next
  830.             Endif
  831.             TSTRING003(INTEGER014, 1) = STRING013
  832.             If (TINTEGER011(5) == 1) INTEGER007 = 1
  833.         Endif
  834.         Goto LABEL026
  835.         :LABEL036
  836.         If (BOOLEAN001 == 1) Then
  837.             STRING032 = Upper(STRING016)
  838.             STRING013 = Replace(STRING032, " ", "_")
  839.             STRING032 = STRING013
  840.             STRING013 = Replace(STRING032, ".", "_")
  841.             INTEGER022 = INTEGER022 + 1
  842.             STRING011 = PPEPath() + "NUV\" + STRING013 + ".NUV"
  843.             STRING012 = PPEPath() + "NUV\" + STRING013 + ".NFO"
  844.             FCreate 10, STRING011, 1, 0
  845.             FCreate 10, STRING012, 1, 0
  846.             STRING013 = ""
  847.             STRING013 = Upper(Left(STRING016, 1))
  848.             For INTEGER017 = 2 To Len(STRING016)
  849.                 If (Mid(STRING016, INTEGER017, 1) == " ") Then
  850.                     STRING013 = STRING013 + Upper(Mid(STRING016, INTEGER017, 2))
  851.                     INTEGER017 = INTEGER017 + 1
  852.                     Continue
  853.                 Endif
  854.                 STRING013 = STRING013 + Lower(Mid(STRING016, INTEGER017, 1))
  855.             Next
  856.             FOpen 10, STRING011, 1, 0
  857.             FPutLn 10, STRING013
  858.             FPutLn 10, "0"
  859.             FPutLn 10, "0"
  860.             FPutLn 10, "0"
  861.             FPutLn 10, "0"
  862.             FPutLn 10, "0"
  863.             FClose 10
  864.             FOpen 10, STRING012, 1, 0
  865.             FPutLn 10, TINTEGER011(1)
  866.             FPutLn 10, TINTEGER011(2)
  867.             FPutLn 10, TINTEGER011(3)
  868.             FPutLn 10, TINTEGER011(4)
  869.             FPutLn 10, TINTEGER011(5)
  870.             FPutLn 10, "000-111-000"
  871.             If (TINTEGER011(1) == 1) Then
  872.                 INTEGER010 = ReadLine(TSTRING001(7), 1)
  873.                 FPutLn 10, INTEGER010
  874.                 For INTEGER017 = 1 To INTEGER010
  875.                     FPutLn 10, TSTRING006(1, INTEGER017)
  876.                 Next
  877.                 Goto LABEL037
  878.             Endif
  879.             FPutLn 10, "0"
  880.             :LABEL037
  881.             FPutLn 10, "000-222-000"
  882.             If (TINTEGER011(2) == 1) Then
  883.                 INTEGER010 = ReadLine(TSTRING001(8), 1)
  884.                 FPutLn 10, INTEGER010
  885.                 For INTEGER017 = 1 To INTEGER010
  886.                     FPutLn 10, TSTRING006(2, INTEGER017)
  887.                 Next
  888.                 Goto LABEL038
  889.             Endif
  890.             FPutLn 10, "0"
  891.             :LABEL038
  892.             FPutLn 10, "000-333-000"
  893.             If (TINTEGER011(3) == 1) Then
  894.                 INTEGER010 = ReadLine(TSTRING001(9), 1)
  895.                 FPutLn 10, INTEGER010
  896.                 For INTEGER017 = 1 To INTEGER010
  897.                     FPutLn 10, TSTRING006(3, INTEGER017)
  898.                 Next
  899.                 Goto LABEL039
  900.             Endif
  901.             FPutLn 10, "0"
  902.             :LABEL039
  903.             FPutLn 10, "000-444-000"
  904.             If (TINTEGER011(4) == 1) Then
  905.                 INTEGER010 = ReadLine(TSTRING001(10), 1)
  906.                 FPutLn 10, INTEGER010
  907.                 For INTEGER017 = 1 To INTEGER010
  908.                     FPutLn 10, TSTRING006(4, INTEGER017)
  909.                 Next
  910.                 Goto LABEL040
  911.             Endif
  912.             FPutLn 10, "0"
  913.             :LABEL040
  914.             FPutLn 10, "000-555-000"
  915.             If (TINTEGER011(5) == 1) Then
  916.                 INTEGER010 = ReadLine(TSTRING001(11), 1)
  917.                 FPutLn 10, INTEGER010
  918.                 For INTEGER017 = 1 To INTEGER010
  919.                     FPutLn 10, TSTRING006(5, INTEGER017)
  920.                 Next
  921.                 Goto LABEL041
  922.             Endif
  923.             FPutLn 10, "0"
  924.             :LABEL041
  925.             FPutLn 10, "END"
  926.             FClose 10
  927.         Endif
  928.     Endif
  929.     If (TSTRING009(16) == 1) Then
  930.         Cls
  931.         If (Left(TSTRING008(39), 1) == "%") Then
  932.             STRING014 = TSTRING008(39)
  933.             STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  934.             Color 15
  935.             DispFile STRING013, 1
  936.             PrintLn 
  937.             Goto LABEL042
  938.         Endif
  939.         PrintLn TSTRING008(39)
  940.         :LABEL042
  941.         Color 15
  942.         STRING017 = ""
  943.         For INTEGER017 = 1 To 99
  944.             TSTRING024(INTEGER017) = ""
  945.         Next
  946.         PrintLn 
  947.         STRING013 = ""
  948.         STRING013 = Upper(Left(TSTRING007(5), 1))
  949.         For INTEGER017 = 2 To Len(TSTRING007(5))
  950.             If (Mid(TSTRING007(5), INTEGER017, 1) == " ") Then
  951.                 STRING013 = STRING013 + Upper(Mid(TSTRING007(5), INTEGER017, 2))
  952.                 INTEGER017 = INTEGER017 + 1
  953.                 Continue
  954.             Endif
  955.             STRING013 = STRING013 + Lower(Mid(TSTRING007(5), INTEGER017, 1))
  956.         Next
  957.         PrintLn TSTRING008(2), " @X0F", STRING013
  958.         STRING013 = ""
  959.         STRING013 = Upper(Left(STRING016, 1))
  960.         For INTEGER017 = 2 To Len(STRING016)
  961.             If (Mid(STRING016, INTEGER017, 1) == " ") Then
  962.                 STRING013 = STRING013 + Upper(Mid(STRING016, INTEGER017, 2))
  963.                 INTEGER017 = INTEGER017 + 1
  964.                 Continue
  965.             Endif
  966.             STRING013 = STRING013 + Lower(Mid(STRING016, INTEGER017, 1))
  967.         Next
  968.         PrintLn TSTRING008(3), " @X0F", STRING013
  969.         BOOLEAN004 = 0
  970.         INTEGER016 = 0
  971.         :LABEL043
  972.         If (BOOLEAN004) Goto LABEL045
  973.         InputStr TSTRING008(4) + " _", STRING017, 7, 30, Mask_Ascii(), 8
  974.         If (STRING017 == "") Then
  975.             BOOLEAN004 = 0
  976.             INTEGER016 = INTEGER016 + 1
  977.             STRING017 = ""
  978.             AnsiPos 1, GetY()
  979.             ClrEol
  980.             Goto LABEL044
  981.         Endif
  982.         BOOLEAN004 = 1
  983.         :LABEL044
  984.         Goto LABEL043
  985.         :LABEL045
  986.         FreshLine
  987.         PrintLn 
  988.         PrintLn STRING026, " ┌───────────────────", STRING025, " ──────── ──── ─ ·  · ─ ──── ────────", STRING026, " ───────────────────┐"
  989.         TSTRING007(1) = RTrim(TSTRING007(1), " ")
  990.         If (TSTRING007(1) > 9) Then
  991.             PrintLn STRING026, " │               @X0F· @X07Enter Your Message Now @X0F· @X07Maximum ", TSTRING007(1), " Lines @X0F· @X07               ", STRING026, "│"
  992.             Goto LABEL046
  993.         Endif
  994.         PrintLn STRING026, " │               @X0F· @X07Enter Your Message Now @X0F· @X07Maximum ", TSTRING007(1), " Lines @X0F· @X07                ", STRING026, "│"
  995.         :LABEL046
  996.         PrintLn STRING026, " │             @X0F· @X07(@X0F/S@X07) to Save Message @X0F· @X07(@X0F/A@X07) to Abort Message @X0F·               ", STRING026, "│"
  997.         PrintLn STRING026, " └───────────────────", STRING025, " ──────── ──── ─ ·  · ─ ──── ────────", STRING026, " ───────────────────┘"
  998.         PrintLn 
  999.         BOOLEAN004 = 0
  1000.         For INTEGER017 = 1 To 99
  1001.             TSTRING024(INTEGER017) = ""
  1002.         Next
  1003.         INTEGER013 = 0
  1004.         If (TSTRING007(1) > 100) TSTRING007(1) = 99
  1005.         :LABEL047
  1006.         If (BOOLEAN004) Goto LABEL048
  1007.         INTEGER013 = INTEGER013 + 1
  1008.         InputStr STRING025 + "» _", TSTRING024(INTEGER013), 7, 76, Mask_Ascii(), 512
  1009.         FreshLine
  1010.         If (((INTEGER013 >= TSTRING007(1)) || (Upper(TSTRING024(INTEGER013)) == "/S")) || (Upper(TSTRING024(INTEGER013)) == "/A")) Then
  1011.             If (Upper(TSTRING024(INTEGER013)) == "/A") Then
  1012.                 FreshLine
  1013.                 PrintLn 
  1014.                 PrintLn TSTRING008(5)
  1015.                 Delay 18
  1016.                 BOOLEAN004 = 1
  1017.             Endif
  1018.             If ((INTEGER013 >= TSTRING007(1)) || (Upper(TSTRING024(INTEGER013)) == "/S")) Then
  1019.                 FreshLine
  1020.                 PrintLn 
  1021.                 PrintLn TSTRING008(6)
  1022.                 Delay 18
  1023.                 INTEGER013 = INTEGER013 - 1
  1024.                 FCreate 1, TSTRING001(13), 1, 0
  1025.                 FOpen 1, TSTRING001(13), 2, 0
  1026.                 If (INTEGER009 == -1) Then
  1027.                     STRING013 = ""
  1028.                     For INTEGER017 = 1 To 54
  1029.                         STRING013 = STRING013 + Chr(TINTEGER024(INTEGER017))
  1030.                     Next
  1031.                     FPutLn 1, STRING013
  1032.                     STRING013 = ""
  1033.                     For INTEGER017 = 1 To 54
  1034.                         STRING013 = STRING013 + Chr(TINTEGER024(55))
  1035.                     Next
  1036.                     FPutLn 1, STRING013
  1037.                     FPutLn 1, ""
  1038.                 Endif
  1039.                 For INTEGER018 = 1 To INTEGER013
  1040.                     FPutLn 1, TSTRING024(INTEGER018)
  1041.                 Next
  1042.                 FClose 1
  1043.                 TSTRING007(5) = Upper(TSTRING007(5))
  1044.                 STRING016 = Upper(STRING016)
  1045.                 Message TSTRING007(4), TSTRING007(5), STRING016, STRING017, "R", "@X0FComment Send VIA @X09New User Message", 0, 0, TSTRING001(13)
  1046.                 INTEGER019 = INTEGER019 + 1
  1047.                 Delete TSTRING001(13)
  1048.                 BOOLEAN004 = 1
  1049.             Endif
  1050.         Endif
  1051.         Goto LABEL047
  1052.     Endif
  1053.     :LABEL048
  1054.     Color 15
  1055.     Cls
  1056.     PrintLn 
  1057.     PrintLn TSTRING008(29)
  1058.     PrintLn 
  1059.     More
  1060.     Color 15
  1061.     Cls
  1062.     If (Exist(TSTRING001(19)) == 0) Then
  1063.         FCreate 1, TSTRING001(19), 1, 0
  1064.         FOpen 1, TSTRING001(19), 2, 0
  1065.         FPutLn 1, TSTRING009(15)
  1066.         FPutLn 1, TSTRING008(27)
  1067.         FPutLn 1, TSTRING010(9)
  1068.         FClose 1
  1069.     Else
  1070.         Delete TSTRING001(19)
  1071.         FCreate 1, TSTRING001(19), 1, 0
  1072.         FOpen 1, TSTRING001(19), 2, 0
  1073.         FPutLn 1, TSTRING009(15)
  1074.         FPutLn 1, TSTRING008(27)
  1075.         FPutLn 1, TSTRING010(9)
  1076.         FClose 1
  1077.     Endif
  1078.     INTEGER021 = 0
  1079.     For INTEGER017 = 1 To Len(STRING016)
  1080.         If (Mid(STRING016, INTEGER017, 1) == " ") INTEGER021 = 1
  1081.     Next
  1082.     If (INTEGER021 == 1) Then
  1083.         KbdStuff STRING016 + Chr(13)
  1084.     Else
  1085.         KbdStuff STRING016 + Chr(13)
  1086.         KbdStuff Chr(13)
  1087.     Endif
  1088.     KbdStuff Chr(13)
  1089.     KbdStuff Chr(13)
  1090.     For INTEGER017 = 1 To 2
  1091.         KbdStuff TSTRING010(INTEGER017) + Chr(13)
  1092.     Next
  1093.     For INTEGER017 = 4 To 8
  1094.         KbdStuff TSTRING010(INTEGER017) + Chr(13)
  1095.     Next
  1096.     If (Psa(1)) Then
  1097.         KbdStuff Chr(13)
  1098.     Endif
  1099.     If (Psa(3)) Then
  1100.         KbdStuff Chr(13)
  1101.         KbdStuff Chr(13)
  1102.         KbdStuff Chr(13)
  1103.         KbdStuff Chr(13)
  1104.         KbdStuff Chr(13)
  1105.         KbdStuff Chr(13)
  1106.     Endif
  1107.     If (Psa(4)) Then
  1108.         KbdStuff "Unknown" + Chr(13)
  1109.     Endif
  1110.     KbdStuff "N" + Chr(13)
  1111.     End
  1112.     Return
  1113.     :LABEL049
  1114.     Color 15
  1115.     Cls
  1116.     If (Left(TSTRING008(17), 1) == "%") Then
  1117.         INTEGER017 = 0
  1118.         STRING014 = TSTRING008(17)
  1119.         STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  1120.         DispFile STRING013, 1
  1121.     Else
  1122.         PrintLn TSTRING008(17)
  1123.     Endif
  1124.     PrintLn 
  1125.     If (STRING030 == "0") Then
  1126.         Goto LABEL050
  1127.     Endif
  1128.     AnsiPos 1, GetY()
  1129.     ClrEol
  1130.     Print TSTRING008(18)
  1131.     STRING031 = ""
  1132.     InputStr " _", STRING031, 15, 30, Mask_Ascii(), 1
  1133.     If (Upper(STRING031) <> Upper(STRING030)) Return
  1134.     :LABEL050
  1135.     DispFile PPEPath() + TSTRING008(14), 1
  1136.     DispFile PPEPath() + TSTRING008(15), 1
  1137.     DispFile PPEPath() + TSTRING008(16), 1
  1138.     BOOLEAN004 = 0
  1139.     Color 15
  1140.     Cls
  1141.     DispFile TSTRING001(16), 1
  1142.     AnsiPos TSTRING009(9), TSTRING009(8)
  1143.     STRING016 = ""
  1144.     STRING019 = ""
  1145.     InputStr "_", STRING016, 15, TSTRING002(1, 3), Mask_Ascii(), 0
  1146.     STRING019 = Upper(STRING016)
  1147.     If (U_RecNum(STRING019) <> -1) Then
  1148.         GetAltUser U_RecNum(STRING019)
  1149.         If (U_Sec < TSTRING009(26)) Then
  1150.             AnsiPos 1, TSTRING009(25)
  1151.             PrintLn TSTRING008(36)
  1152.             Delay 18
  1153.             AnsiPos 1, TSTRING009(25)
  1154.             ClrEol
  1155.             Return
  1156.         Endif
  1157.         INTEGER012 = 0
  1158.         :LABEL051
  1159.         If (BOOLEAN004) Goto LABEL052
  1160.         INTEGER012 = INTEGER012 + 1
  1161.         STRING015 = ""
  1162.         AnsiPos TSTRING009(11), TSTRING009(10)
  1163.         InputStr "_", STRING015, 15, TSTRING002(2, 3), Mask_Ascii(), 1
  1164.         If (Upper(STRING015) == Upper(U_Pwd)) Then
  1165.             BOOLEAN004 = 1
  1166.         Else
  1167.             If (INTEGER012 == TSTRING009(13)) Then
  1168.                 AnsiPos 1, TSTRING009(25)
  1169.                 Print TSTRING008(20)
  1170.                 Delay 18
  1171.                 KbdStuff TSTRING009(15) + Chr(13)
  1172.                 Hangup
  1173.                 DtrOff
  1174.                 End
  1175.             Endif
  1176.             AnsiPos 1, TSTRING009(25)
  1177.             Print TSTRING008(19)
  1178.             Delay 18
  1179.             AnsiPos 1, TSTRING009(25)
  1180.             Print "                                                                            "
  1181.             AnsiPos TSTRING009(11), TSTRING009(10)
  1182.             For INTEGER017 = 1 To Len(STRING015)
  1183.                 Print " "
  1184.             Next
  1185.         Endif
  1186.         Goto LABEL051
  1187.         :LABEL052
  1188.     Else
  1189.         AnsiPos 1, TSTRING009(25)
  1190.         Print TSTRING008(34)
  1191.         Delay 18
  1192.         AnsiPos 1, TSTRING009(25)
  1193.         Print "                                                                            "
  1194.         Return
  1195.     Endif
  1196.     If (BOOLEAN004 == 0) Then
  1197.         Return
  1198.     Else
  1199.         INTEGER021 = 0
  1200.         For INTEGER017 = 1 To Len(STRING016)
  1201.             If (Mid(STRING016, INTEGER017, 1) == " ") INTEGER021 = 1
  1202.         Next
  1203.         If (INTEGER021 == 1) Then
  1204.             KbdStuff STRING016 + Chr(13)
  1205.         Else
  1206.             KbdStuff STRING016 + Chr(13)
  1207.             KbdStuff Chr(13)
  1208.         Endif
  1209.         FOpen 1, TSTRING001(19), 2, 0
  1210.         FPutLn 1, TSTRING009(10)
  1211.         FPutLn 1, TSTRING009(11)
  1212.         FPutLn 1, STRING015
  1213.         FClose 1
  1214.         End
  1215.     Endif
  1216.     :LABEL053
  1217.     If (INTEGER019 == TSTRING007(7)) Then
  1218.         AnsiPos 1, TSTRING009(14)
  1219.         Print TSTRING008(25)
  1220.         Delay 18
  1221.         AnsiPos 1, TSTRING009(14)
  1222.         Print "                                                                                "
  1223.         Return
  1224.     Else
  1225.         Color 15
  1226.         Cls
  1227.         PrintLn 
  1228.         If (Left(TSTRING008(1), 1) == "%") Then
  1229.             STRING014 = TSTRING008(1)
  1230.             STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  1231.             DispFile STRING013, 1
  1232.         Else
  1233.             PrintLn TSTRING008(1)
  1234.         Endif
  1235.         PrintLn 
  1236.         STRING013 = ""
  1237.         STRING013 = Upper(Left(TSTRING007(5), 1))
  1238.         For INTEGER017 = 2 To Len(TSTRING007(5))
  1239.             If (Mid(TSTRING007(5), INTEGER017, 1) == " ") Then
  1240.                 STRING013 = STRING013 + Upper(Mid(TSTRING007(5), INTEGER017, 2))
  1241.                 INTEGER017 = INTEGER017 + 1
  1242.                 Continue
  1243.             Endif
  1244.             STRING013 = STRING013 + Lower(Mid(TSTRING007(5), INTEGER017, 1))
  1245.         Next
  1246.         PrintLn TSTRING008(2), " @X0F", STRING013
  1247.         BOOLEAN004 = 0
  1248.         INTEGER016 = 0
  1249.         STRING016 = ""
  1250.         :LABEL054
  1251.         If (BOOLEAN004) Goto LABEL055
  1252.         InputStr TSTRING008(3) + " _", STRING016, 7, 30, Mask_Ascii(), 8
  1253.         If (TSTRING009(27) == "1") Then
  1254.             If (U_RecNum(STRING016) == -1) Then
  1255.                 BOOLEAN004 = 0
  1256.                 INTEGER016 = INTEGER016 + 1
  1257.                 STRING016 = ""
  1258.                 AnsiPos 1, GetY() + 2
  1259.                 Print TSTRING008(34)
  1260.                 Delay 18
  1261.                 AnsiPos 1, GetY()
  1262.                 ClrEol
  1263.                 AnsiPos 1, GetY() - 2
  1264.                 ClrEol
  1265.             Else
  1266.                 BOOLEAN004 = 1
  1267.             Endif
  1268.             If (INTEGER016 == 2) Return
  1269.         ElseIf (STRING016 <> "") Then
  1270.             BOOLEAN004 = 1
  1271.         Else
  1272.             AnsiPos 1, GetY()
  1273.             ClrEol
  1274.             INTEGER016 = INTEGER016 + 1
  1275.         Endif
  1276.         If (INTEGER016 == 2) Return
  1277.         Goto LABEL054
  1278.         :LABEL055
  1279.         If (TSTRING007(3) == 1) Then
  1280.             FreshLine
  1281.             BOOLEAN004 = 0
  1282.             INTEGER016 = 0
  1283.             :LABEL056
  1284.             If (BOOLEAN004) Goto LABEL057
  1285.             STRING017 = ""
  1286.             InputStr TSTRING008(4) + " _", STRING017, 7, 30, Mask_Ascii(), 8
  1287.             If (STRING017 == "") Then
  1288.                 BOOLEAN004 = 0
  1289.                 INTEGER016 = INTEGER016 + 1
  1290.                 STRING017 = ""
  1291.                 AnsiPos 1, GetY()
  1292.                 ClrEol
  1293.             Else
  1294.                 BOOLEAN004 = 1
  1295.             Endif
  1296.             If (INTEGER016 == 2) Return
  1297.             Goto LABEL056
  1298.             :LABEL057
  1299.         Else
  1300.             STRING017 = TSTRING007(3)
  1301.         Endif
  1302.         FreshLine
  1303.         PrintLn 
  1304.         PrintLn STRING026, " ┌───────────────────", STRING025, " ──────── ──── ─ ·  · ─ ──── ────────", STRING026, " ───────────────────┐"
  1305.         TSTRING007(1) = RTrim(TSTRING007(1), " ")
  1306.         If (TSTRING007(1) > 9) Then
  1307.             PrintLn STRING026, " │               @X0F· @X07Enter Your Message Now @X0F· @X07Maximum ", TSTRING007(1), " Lines @X0F· @X07               ", STRING026, "│"
  1308.         Else
  1309.             PrintLn STRING026, " │               @X0F· @X07Enter Your Message Now @X0F· @X07Maximum ", TSTRING007(1), " Lines @X0F· @X07                ", STRING026, "│"
  1310.         Endif
  1311.         PrintLn STRING026, " │             @X0F· @X07(@X0F/S@X07) to Save Message @X0F· @X07(@X0F/A@X07) to Abort Message @X0F·               ", STRING026, "│"
  1312.         PrintLn STRING026, " └───────────────────", STRING025, " ──────── ──── ─ ·  · ─ ──── ────────", STRING026, " ───────────────────┘"
  1313.         PrintLn 
  1314.         BOOLEAN004 = 0
  1315.         For INTEGER017 = 1 To 99
  1316.             TSTRING024(INTEGER017) = ""
  1317.         Next
  1318.         INTEGER013 = 0
  1319.         If (TSTRING007(1) > 100) TSTRING007(1) = 99
  1320.         :LABEL058
  1321.         If (BOOLEAN004) Goto LABEL059
  1322.         INTEGER013 = INTEGER013 + 1
  1323.         InputStr STRING025 + "» _", TSTRING024(INTEGER013), 7, 76, Mask_Ascii(), 512
  1324.         FreshLine
  1325.         If (((INTEGER013 >= TSTRING007(1)) || (Upper(TSTRING024(INTEGER013)) == "/S")) || (Upper(TSTRING024(INTEGER013)) == "/A")) Then
  1326.             If (Upper(TSTRING024(INTEGER013)) == "/A") Then
  1327.                 FreshLine
  1328.                 PrintLn 
  1329.                 PrintLn TSTRING008(5)
  1330.                 Delay 18
  1331.                 Return
  1332.             Endif
  1333.             If ((INTEGER017 >= TSTRING007(1)) || (Upper(TSTRING024(INTEGER013)) == "/S")) Then
  1334.                 FreshLine
  1335.                 PrintLn 
  1336.                 PrintLn TSTRING008(6)
  1337.                 Delay 18
  1338.                 INTEGER013 = INTEGER013 - 1
  1339.                 FCreate 1, TSTRING001(13), 1, 0
  1340.                 FOpen 1, TSTRING001(13), 2, 0
  1341.                 If (INTEGER009 == -1) Then
  1342.                     STRING013 = ""
  1343.                     For INTEGER017 = 1 To 54
  1344.                         STRING013 = STRING013 + Chr(TINTEGER024(INTEGER017))
  1345.                     Next
  1346.                     FPutLn 1, STRING013
  1347.                     STRING013 = ""
  1348.                     For INTEGER017 = 1 To 54
  1349.                         STRING013 = STRING013 + Chr(TINTEGER024(55))
  1350.                     Next
  1351.                     FPutLn 1, STRING013
  1352.                     FPutLn 1, ""
  1353.                 Endif
  1354.                 For INTEGER018 = 1 To INTEGER013
  1355.                     FPutLn 1, TSTRING024(INTEGER018)
  1356.                 Next
  1357.                 FClose 1
  1358.                 TSTRING007(5) = Upper(TSTRING007(5))
  1359.                 STRING016 = Upper(STRING016)
  1360.                 Message TSTRING007(4), TSTRING007(5), STRING016, STRING017, "R", "@X0FComment Send VIA @X09Matrix Feedback", 0, 0, TSTRING001(13)
  1361.                 STRING016 = ""
  1362.                 INTEGER019 = INTEGER019 + 1
  1363.                 Delete TSTRING001(13)
  1364.                 Return
  1365.             Endif
  1366.         Endif
  1367.         Goto LABEL058
  1368.         :LABEL059
  1369.         AdjTime TSTRING009(6)
  1370.         Return
  1371.     Endif
  1372.     :LABEL060
  1373.     If (INTEGER020 == TSTRING009(1)) Then
  1374.         AnsiPos 1, TSTRING009(14)
  1375.         Print TSTRING008(25)
  1376.         Delay 18
  1377.         AnsiPos 1, TSTRING009(14)
  1378.         Print "                                                                                "
  1379.         Return
  1380.     Else
  1381.         Color 15
  1382.         Cls
  1383.         If (Left(TSTRING008(7), 1) == "%") Then
  1384.             STRING014 = TSTRING008(7)
  1385.             STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  1386.             DispFile STRING013, 1
  1387.             PrintLn 
  1388.         Else
  1389.             PrintLn TSTRING008(7)
  1390.         Endif
  1391.         PrintLn 
  1392.         BOOLEAN004 = 0
  1393.         INTEGER016 = 0
  1394.         STRING016 = ""
  1395.         :LABEL061
  1396.         If (BOOLEAN004) Goto LABEL062
  1397.         InputStr TSTRING008(9) + " _", STRING016, 7, 30, Mask_Ascii(), 8
  1398.         If (TSTRING009(27) == "1") Then
  1399.             If (U_RecNum(STRING016) == -1) Then
  1400.                 BOOLEAN004 = 0
  1401.                 INTEGER016 = INTEGER016 + 1
  1402.                 STRING016 = ""
  1403.                 AnsiPos 1, GetY() + 2
  1404.                 Print TSTRING008(34)
  1405.                 Delay 18
  1406.                 AnsiPos 1, GetY()
  1407.                 ClrEol
  1408.                 AnsiPos 1, GetY() - 2
  1409.                 ClrEol
  1410.             Else
  1411.                 BOOLEAN004 = 1
  1412.             Endif
  1413.         ElseIf (STRING016 <> "") Then
  1414.             BOOLEAN004 = 1
  1415.         Else
  1416.             AnsiPos 1, GetY()
  1417.             ClrEol
  1418.             INTEGER016 = INTEGER016 + 1
  1419.         Endif
  1420.         If (INTEGER016 == 2) Return
  1421.         Goto LABEL061
  1422.         :LABEL062
  1423.         FreshLine
  1424.         BOOLEAN004 = 0
  1425.         INTEGER016 = 0
  1426.         :LABEL063
  1427.         If (BOOLEAN004) Goto LABEL064
  1428.         InputStr TSTRING008(8) + " _", STRING018, 7, 30, Mask_Ascii(), 8
  1429.         If (STRING018 == "") Then
  1430.             BOOLEAN004 = 0
  1431.             INTEGER016 = INTEGER016 + 1
  1432.             STRING018 = ""
  1433.             AnsiPos 1, GetY()
  1434.             ClrEol
  1435.         Else
  1436.             BOOLEAN004 = 1
  1437.         Endif
  1438.         If (INTEGER016 == 2) Return
  1439.         Goto LABEL063
  1440.         :LABEL064
  1441.         FreshLine
  1442.         PrintLn 
  1443.         SPrintLn TSTRING008(28)
  1444.         SPrintLn 
  1445.         PrintLn TSTRING008(40)
  1446.         PrintLn 
  1447.         Print TSTRING008(10)
  1448.         INTEGER020 = INTEGER020 + 1
  1449.         PageOn
  1450.         INTEGER018 = 0
  1451.         For INTEGER017 = 1 To TSTRING009(2)
  1452.             Print TSTRING008(11)
  1453.             MPrint "@BEEP@"
  1454.             Sound 110
  1455.             Delay 2
  1456.             If (Inkey() == " ") Then
  1457.                 Sound 0
  1458.                 INTEGER018 = 3
  1459.                 PageOff
  1460.                 Chat
  1461.                 Return
  1462.             Endif
  1463.             If (Inkey() == Chr(27)) Then
  1464.                 ResetDisp
  1465.                 KeyFlush
  1466.                 Sound 0
  1467.                 INTEGER018 = 1
  1468.                 INTEGER017 = TSTRING009(2)
  1469.             Endif
  1470.             Sound 440
  1471.             Delay 2
  1472.             If (Inkey() == " ") Then
  1473.                 Sound 0
  1474.                 INTEGER018 = 3
  1475.                 PageOff
  1476.                 Chat
  1477.                 Return
  1478.             Endif
  1479.             If (Inkey() == Chr(27)) Then
  1480.                 ResetDisp
  1481.                 KeyFlush
  1482.                 Sound 0
  1483.                 INTEGER018 = 1
  1484.                 INTEGER017 = TSTRING009(2)
  1485.             Endif
  1486.             Sound 880
  1487.             Delay 2
  1488.             If (Inkey() == " ") Then
  1489.                 Sound 0
  1490.                 INTEGER018 = 3
  1491.                 PageOff
  1492.                 Chat
  1493.                 Return
  1494.             Endif
  1495.             If (Inkey() == Chr(27)) Then
  1496.                 ResetDisp
  1497.                 KeyFlush
  1498.                 Sound 0
  1499.                 INTEGER018 = 1
  1500.                 INTEGER017 = TSTRING009(2)
  1501.             Endif
  1502.             Sound 0
  1503.             Delay 5
  1504.             If (Inkey() == " ") Then
  1505.                 Sound 0
  1506.                 INTEGER018 = 3
  1507.                 PageOff
  1508.                 Chat
  1509.                 Return
  1510.             Endif
  1511.             If (Inkey() == Chr(27)) Then
  1512.                 ResetDisp
  1513.                 KeyFlush
  1514.                 Sound 0
  1515.                 INTEGER018 = 1
  1516.                 INTEGER017 = TSTRING009(2)
  1517.             Endif
  1518.             Delay 5
  1519.             If (Inkey() == " ") Then
  1520.                 Sound 0
  1521.                 INTEGER018 = 3
  1522.                 PageOff
  1523.                 Chat
  1524.                 Return
  1525.             Endif
  1526.             If (Inkey() == Chr(27)) Then
  1527.                 ResetDisp
  1528.                 KeyFlush
  1529.                 Sound 0
  1530.                 INTEGER018 = 1
  1531.                 INTEGER017 = TSTRING009(2)
  1532.             Endif
  1533.         Next
  1534.         PrintLn 
  1535.         If (INTEGER018 == 0) Then
  1536.             PrintLn 
  1537.             PrintLn TSTRING008(12)
  1538.         Endif
  1539.         If (INTEGER018 == 1) Then
  1540.             PrintLn 
  1541.             PrintLn "@X0FPage Aborted..."
  1542.         Endif
  1543.         Delay 18
  1544.         Return
  1545.     Endif
  1546.     :LABEL065
  1547.     BOOLEAN004 = 0
  1548.     Color 15
  1549.     Cls
  1550.     DispFile TSTRING001(16), 1
  1551.     AnsiPos TSTRING009(9), TSTRING009(8)
  1552.     STRING016 = ""
  1553.     STRING019 = ""
  1554.     InputStr "_", STRING016, 15, TSTRING002(1, 3), Mask_Ascii(), 0
  1555.     STRING019 = Upper(STRING016)
  1556.     If (U_RecNum(STRING019) <> -1) Then
  1557.         GetAltUser U_RecNum(STRING019)
  1558.         INTEGER012 = 0
  1559.         :LABEL066
  1560.         If (BOOLEAN004) Goto LABEL067
  1561.         INTEGER012 = INTEGER012 + 1
  1562.         STRING015 = ""
  1563.         AnsiPos TSTRING009(11), TSTRING009(10)
  1564.         InputStr "_", STRING015, 15, TSTRING002(2, 3), Mask_Ascii(), 1
  1565.         If (Upper(STRING015) == Upper(U_Pwd)) Then
  1566.             BOOLEAN004 = 1
  1567.         Else
  1568.             If (INTEGER012 == TSTRING009(13)) Then
  1569.                 AnsiPos 1, TSTRING009(25)
  1570.                 Print TSTRING008(20)
  1571.                 Delay 18
  1572.                 KbdStuff TSTRING009(15) + Chr(13)
  1573.                 Hangup
  1574.                 DtrOff
  1575.                 End
  1576.             Endif
  1577.             AnsiPos 1, TSTRING009(25)
  1578.             Print TSTRING008(19)
  1579.             Delay 18
  1580.             AnsiPos 1, TSTRING009(25)
  1581.             Print "                                                                            "
  1582.             AnsiPos TSTRING009(11), TSTRING009(10)
  1583.             For INTEGER017 = 1 To Len(STRING015)
  1584.                 Print " "
  1585.             Next
  1586.         Endif
  1587.         Goto LABEL066
  1588.         :LABEL067
  1589.     Else
  1590.         AnsiPos 1, TSTRING009(25)
  1591.         Print TSTRING008(34)
  1592.         Delay 18
  1593.         AnsiPos 1, TSTRING009(25)
  1594.         Print "                                                                            "
  1595.         Return
  1596.     Endif
  1597.     AnsiPos 1, TSTRING009(25)
  1598.     If (U_Sec >= TSTRING009(26)) Then
  1599.         PrintLn TSTRING008(35)
  1600.         PrintLn 
  1601.         PrintLn TSTRING008(18) + " @X0F" + Upper(TSTRING009(5))
  1602.         PrintLn 
  1603.         More
  1604.     Else
  1605.         STRING032 = Upper(STRING016)
  1606.         STRING013 = Replace(STRING032, " ", "_")
  1607.         STRING032 = STRING013
  1608.         STRING013 = Replace(STRING032, ".", "_")
  1609.         STRING011 = PPEPath() + "NUV\" + STRING013 + ".NUV"
  1610.         FOpen 2, STRING011, 0, 0
  1611.         FGet 2, STRING013
  1612.         FGet 2, STRING033
  1613.         FGet 2, STRING034
  1614.         FClose 2
  1615.         PrintLn TSTRING008(36)
  1616.         PrintLn 
  1617.         PrintLn TSTRING008(41) + " @X0F" + STRING033
  1618.         PrintLn TSTRING008(42) + " @X0F" + STRING034
  1619.         More
  1620.     Endif
  1621.     Return
  1622.     :LABEL068
  1623.     If (TSTRING009(4) == "1") Then
  1624.         AnsiPos 1, TSTRING009(3)
  1625.         Print TSTRING008(30)
  1626.         Print " "
  1627.         BOOLEAN004 = 0
  1628.         STRING013 = ""
  1629.         :LABEL069
  1630.         If (BOOLEAN004) Goto LABEL071
  1631.         STRING013 = Inkey()
  1632.         If (Len(STRING013)) Then
  1633.             If (Upper(STRING013) == "Y") Then
  1634.                 AnsiPos 1, TSTRING009(3)
  1635.                 ClrEol
  1636.                 If (Left(TSTRING008(13), 1) == "%") Then
  1637.                     STRING014 = TSTRING008(13)
  1638.                     STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  1639.                     Color 15
  1640.                     Cls
  1641.                     DispFile STRING013, 1
  1642.                     PrintLn 
  1643.                     Goto LABEL070
  1644.                 Endif
  1645.                 AnsiPos 1, TSTRING009(3)
  1646.                 PrintLn TSTRING008(13)
  1647.                 :LABEL070
  1648.                 If (OnLocal() && (INTEGER008 == 1)) End
  1649.                 KbdStuff TSTRING009(15) + Chr(13)
  1650.                 Hangup
  1651.                 DtrOff
  1652.                 End
  1653.             Endif
  1654.             If (Upper(STRING013) == "N") Then
  1655.                 AnsiPos 1, TSTRING009(3)
  1656.                 ClrEol
  1657.                 BOOLEAN004 = 1
  1658.             Endif
  1659.         Endif
  1660.         Goto LABEL069
  1661.         :LABEL071
  1662.     Else
  1663.         If (Left(TSTRING008(13), 1) == "%") Then
  1664.             STRING014 = TSTRING008(13)
  1665.             STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  1666.             Color 15
  1667.             Cls
  1668.             DispFile STRING013, 1
  1669.             PrintLn 
  1670.         Else
  1671.             AnsiPos 1, TSTRING009(3)
  1672.             PrintLn TSTRING008(13)
  1673.         Endif
  1674.         KbdStuff TSTRING009(15) + Chr(13)
  1675.         If (OnLocal() && (INTEGER008 == 1)) End
  1676.         Hangup
  1677.         DtrOff
  1678.         End
  1679.     Endif
  1680.     Return
  1681.     :LABEL072
  1682.     STRING044 = "@X0F"
  1683.     STRING043 = "!"
  1684.     STRING035 = Chr(75) + Chr(114) + Chr(104) + Chr(121) + Chr(112) + Chr(116) + Chr(105) + Chr(99)
  1685.     STRING036 = STRING044 + Chr(85) + Chr(110) + Chr(114) + Chr(101) + Chr(103) + Chr(105) + Chr(115) + Chr(116) + Chr(101) + Chr(114) + Chr(101) + Chr(100) + STRING043
  1686.     STRING037 = STRING044 + Chr(82) + Chr(101) + Chr(103) + Chr(105) + Chr(115) + Chr(116) + Chr(114) + Chr(97) + Chr(116) + Chr(105) + Chr(111) + Chr(110)
  1687.     STRING038 = STRING044 + Chr(78) + Chr(97) + Chr(109) + Chr(101) + STRING043
  1688.     STRING039 = STRING044 + Chr(67) + Chr(111) + Chr(100) + Chr(101) + Chr(115) + STRING043
  1689.     STRING040 = STRING044 + Chr(67) + Chr(111) + Chr(100) + Chr(101) + Chr(100) + Chr(255) + Chr(98) + Chr(121) + Chr(255) + STRING035
  1690.     STRING041 = "@X0D" + Chr(77) + Chr(97) + "@X05" + Chr(116) + Chr(114) + "@X08" + Chr(105) + Chr(120) + Chr(255) + "@X0D" + Chr(50) + Chr(48) + "@X05" + Chr(48) + Chr(48)
  1691.     STRING042 = Chr(69) + Chr(114) + Chr(114) + Chr(111) + Chr(114) + Chr(255) + Chr(105) + Chr(110)
  1692.     STRING045 = STRING044 + Chr(82) + Chr(101) + Chr(103) + Chr(105) + Chr(115) + Chr(116) + Chr(101) + Chr(114) + Chr(101) + Chr(100) + Chr(255) + Chr(116) + Chr(111)
  1693.     Color 7
  1694.     If (STRING046 == "NONE") Then
  1695.         PrintLn STRING041 + " @X07· " + STRING040 + " @X07· " + STRING036
  1696.         INTEGER009 = -1
  1697.         Delay 15
  1698.         Return
  1699.     Else
  1700.         INTEGER001 = STRING048
  1701.         STRING052 = Left(STRING047, 9)
  1702.         INTEGER003 = STRING052
  1703.         INTEGER002 = ((INTEGER003 / 3 - 42) * 2 - 2) / 2 + 1
  1704.         If (((((INTEGER002 == INTEGER001) || (INTEGER002 == INTEGER001 - 1)) || (INTEGER002 == INTEGER001 + 1)) || (INTEGER002 == INTEGER001 + 2)) || (INTEGER002 == INTEGER001 - 2)) Then
  1705.             INTEGER004 = Len(STRING047)
  1706.             INTEGER005 = 1
  1707.             BOOLEAN004 = 0
  1708.             :LABEL073
  1709.             If (BOOLEAN004) Goto LABEL074
  1710.             STRING050 = Mid(STRING047, INTEGER005, 2)
  1711.             INTEGER006 = STRING050
  1712.             If (Left(STRING050, 1) == "0") Then
  1713.                 STRING051 = STRING051 + " "
  1714.                 INTEGER005 = INTEGER005 + 1
  1715.             Else
  1716.                 STRING051 = STRING051 + TSTRING049(INTEGER006)
  1717.                 INTEGER005 = INTEGER005 + 2
  1718.             Endif
  1719.             If (INTEGER005 >= Len(STRING047)) BOOLEAN004 = 1
  1720.             Goto LABEL073
  1721.             :LABEL074
  1722.             If (STRING046 == STRING051) Then
  1723.                 PrintLn STRING041 + " @X07· " + STRING040 + " @X07·@X0F " + STRING045 + " " + STRING051
  1724.             ElseIf (STRING046 <> STRING051) Then
  1725.                 PrintLn STRING041 + " @X07· " + STRING040 + " @X07·@X0F " + STRING042 + " " + STRING037 + " " + STRING038
  1726.                 INTEGER009 = -1
  1727.             Endif
  1728.         Else
  1729.             PrintLn STRING041 + "@X07 · " + STRING040 + " @X07·@X0F " + STRING042 + " " + STRING037 + " " + STRING039
  1730.             INTEGER009 = -1
  1731.         Endif
  1732.         Delay 18
  1733.     Endif
  1734.     Return
  1735.  
  1736. ;------------------------------------------------------------------------------
  1737. ;
  1738. ; Usage report (before postprocessing)
  1739. ;
  1740. ; ■ Statements used :
  1741. ;
  1742. ;    14      End
  1743. ;    17      Cls
  1744. ;    14      ClrEol
  1745. ;    5       More
  1746. ;    20      Color 
  1747. ;    363     Goto 
  1748. ;    536     Let 
  1749. ;    65      Print 
  1750. ;    90      PrintLn 
  1751. ;    247     If 
  1752. ;    18      DispFile 
  1753. ;    6       FCreate 
  1754. ;    13      FOpen 
  1755. ;    13      FClose 
  1756. ;    33      FGet 
  1757. ;    49      FPutLn 
  1758. ;    5       ResetDisp
  1759. ;    12      Hangup
  1760. ;    3       Delete 
  1761. ;    3       AdjTime 
  1762. ;    26      InputStr 
  1763. ;    7       Gosub 
  1764. ;    27      Return
  1765. ;    12      DtrOff
  1766. ;    25      Delay 
  1767. ;    31      KbdStuff 
  1768. ;    1       RdUNet 
  1769. ;    1       WrUNet 
  1770. ;    95      AnsiPos 
  1771. ;    11      FreshLine
  1772. ;    2       Message 
  1773. ;    14      Sound 
  1774. ;    5       Chat
  1775. ;    2       SPrintLn 
  1776. ;    1       MPrint 
  1777. ;    1       PageOn
  1778. ;    5       PageOff
  1779. ;    5       KeyFlush
  1780. ;    2       GetAltUser 
  1781. ;
  1782. ;
  1783. ; ■ Functions used :
  1784. ;
  1785. ;    10      -
  1786. ;    1       *
  1787. ;    2       /
  1788. ;    304     +
  1789. ;    32      -
  1790. ;    141     ==
  1791. ;    15      <>
  1792. ;    58      <
  1793. ;    49      <=
  1794. ;    15      >
  1795. ;    105     >=
  1796. ;    212     !
  1797. ;    102     &&
  1798. ;    64      ||
  1799. ;    37      Len(
  1800. ;    4       Lower()
  1801. ;    52      Upper()
  1802. ;    16      Mid()
  1803. ;    16      Left()
  1804. ;    9       Right()
  1805. ;    125     Chr()
  1806. ;    2       RTrim()
  1807. ;    4       Replace()
  1808. ;    13      Inkey()
  1809. ;    3       Mask_Alpha()
  1810. ;    2       Mask_Num()
  1811. ;    1       Mask_AlNum()
  1812. ;    18      Mask_Ascii()
  1813. ;    1       PCBDat()
  1814. ;    34      PPEPath()
  1815. ;    2       PcbNode()
  1816. ;    6       ReadLine()
  1817. ;    2       OnLocal()
  1818. ;    1       UN_Name()
  1819. ;    1       UN_City()
  1820. ;    5       Exist()
  1821. ;    13      GetY()
  1822. ;    3       Psa()
  1823. ;    7       U_RecNum()
  1824. ;
  1825. ;------------------------------------------------------------------------------
  1826. ;
  1827. ; Analysis flags : RABMdH
  1828. ;
  1829. ; R - Read user ■ 5
  1830. ;     User records are read, this may signify that someone wants to get
  1831. ;     various informations about a user (for example his password), but
  1832. ;     this may also be normal for a program accessing user records (for
  1833. ;     example a User Editor)
  1834. ;     ■ Search for : GETALTUSER
  1835. ;
  1836. ; A - Adjust online time remaining ■ 5
  1837. ;     Program modify the amount of online time remaining, this may
  1838. ;     be a way to bypass time limits
  1839. ;     ■ Search for : ADJTIME
  1840. ;
  1841. ; B - Brute hangup ■ 1
  1842. ;     Program hangup without notification. This may be a good way to
  1843. ;     disconnect a user, but if used randomly, may be very nasty
  1844. ;     ■ Search for : HANGUP, DTROFF
  1845. ;
  1846. ; M - Send text to modem only ■ 4
  1847. ;     Some informations are sent only to the modem, not to the local
  1848. ;     screen, this is a well known way to make stealth backdoors, Check!
  1849. ;     ■ Search for : SENDMODEM, MPRINT, MPRINTLN
  1850. ;
  1851. ; d - Access PCBOARD.DAT ■ 2
  1852. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  1853. ;     for many PPE so they can find various informations on the system
  1854. ;     (system paths, max number of lines in messages, ...) but it may also
  1855. ;     be a way to gather vital informations.
  1856. ;     ■ Search for : PCBDAT()
  1857. ;
  1858. ; H - Read Password or Password History ■ 5
  1859. ;     Program is reading the user's password or last password history
  1860. ;     This may be ok for a password manager, but it is very suspect. Check!
  1861. ;     ■ Search for : U_PWDHIST, U_PWD
  1862. ;
  1863. ;------------------------------------------------------------------------------
  1864. ;
  1865. ; Postprocessing report
  1866. ;
  1867. ;    49      For/Next
  1868. ;    0       While/EndWhile
  1869. ;    127     If/Then or If/Then/Else
  1870. ;    2       Select Case
  1871. ;
  1872. ;------------------------------------------------------------------------------
  1873. ;                 AEGiS Corp - Break the routines, code against the machines!
  1874. ;------------------------------------------------------------------------------
  1875.